package com.hoongs.v1.vo;

import cn.hutool.core.bean.BeanUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hoongs.v1.entity.Order;
import com.hoongs.v1.utils.DateUtil;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;

@Data
public class OrderVo {

    private String id;

    private String orderCode;
    private String orderNum;

    private String status = "0";         // 订单状态 0:未开始 1:进行中 2:已完成 3 已取消

    private BigDecimal totalNum;         // 订单商品总数

    private BigDecimal totalAmount;         // 订单总金额

    private String userName;      // 下单用户名称

    private String userMobile;      // 下单用户联系方式

    private String userAddress;      // 下单用户地址

    private String riderId;      // 骑手id

    private String riderName;      // 骑手名称

    private String riderMobile;      // 骑手联系方式

    private LocalDateTime orderTime;      // 下单时间
    private String sendTime;       // 期望送达时间

    @NotBlank(message = "请选择支付方式")
    private String paymode;         // 支付方式 1:线下支付 2:在线支付

    @NotBlank(message = "请选择配送方式")
    private String sendmode;         // 支付方式 1:店内用餐 2:店铺配送

    private String remark;         // 订单备注

    private ArrayList<ProductVo> productList;        // 订单所有商品

    public static OrderVo voFromDao(Order order) {
        OrderVo orderVo = BeanUtil.copyProperties(order, OrderVo.class);
        return orderVo;
    }

    public static Order voToDao(OrderVo orderVo) {
        Order order = BeanUtil.copyProperties(orderVo, Order.class);
//        order.setSendTime(orderVo.getSendTime());
        return order;
    }

}
